home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / TPUG Xtras / Unreleased / (c)aaa.d64 / infstr_2.1 (.txt) < prev    next >
Commodore BASIC  |  2009-02-07  |  11KB  |  298 lines

  1. 50 REM VERSION 2.1
  2. 100 REM  (C) 1985 INFER-STRUCTURE SERVICES
  3. 110 REM           12 GLEBEMOUNT AVE.
  4. 111 REM           SECOND FLOOR
  5. 112 REM           TORONTO  ONT.
  6. 113 REM           CANADA
  7. 114 REM           M4C 3R3
  8. 115 REM THIS PROGRAM MAY BE COPIED AND DISTRIBUTED BUT NOT FOR PROFIT.
  9. 140 ::POKE53265,27:GOTO910
  10. 160 DIMFM$(FT+FA),FL%(FT+FA),F1$(FT+FA):GOTO1360
  11. 170 DIMKF$(RT+RA),RP%(RT+RA):GOTO1630
  12. 200 E2=RP%(0):IFE2=0ORKF$(RN)<KF$(E2)THENRP%(RN)=E2:RP%(0)=RN:GOTO270
  13. 220 E3=E2:E2=RP%(E2)
  14. 240 IFE2=0ORKF$(RN)<KF$(E2)GOTO260
  15. 250 E3=E2:E2=RP%(E2):GOTO240
  16. 260 RP%(E3)=RN:RP%(RN)=E2
  17. 270 RETURN::
  18. 380 PRINT"[147]KEYFIELD SETUP:[146] ":PRINT:FORE1=1TOFT:PRINT""E1;"[157].[146] ";FM$(E1):NEXT
  19. 430 PRINT"USE WHICH AS KEY:[146]
  20. 440 [161]E1$:KF[178][197](E1$):[139]KF[179]1[176]KF[177]FT[167][137]440
  21. 450 [153]"LOAD":FK$[178][196](KF)[170]"."[170]FP$:[159]11,8,11,"0:"[170]FK$[170]".REL":[129]E1[178]1[164]RT:[132]11,KF$(E1)
  22. 490 RP%(E1)[178]E1[170]1:[130]:RP%(RT)[178]0:RP%(0)[178]0:KF$(0)[178][199](255):[151]53265,0:[129]E1[178]1[164]RT
  23. 570 [139]KF$(E1)[178][199](255)[167]RP%(E1)[178]NE:NE[178]E1:[137]590
  24. 580 RN[178]E1:[141]200
  25. 590 [130]:[151]53265,27:[160]11:[142]::::
  26. 660 [141]6990:[141]4480:[141]3220:[141]7050:[141]4480:[141]3220:[153]"LOADSCAN FOR: WAIT";:M1[178]2:M2[178]0:P4[178]80:[141]1850
  27. 700 SS$[178]O1$:[139]SS$[178]""[137]890
  28. 710 [139][200](SS$,1)[178]"*"[167]SS$[178][202](SS$,2)
  29. 720 [139][201](SS$,1)[178]"*"[167]SS$[178][200](SS$,[195](SS$)[171]1)
  30. 730 U5[178][195](SS$):RN[178]RP%(0):[139]D1$(3)[178]"K"[167]U3[178]KF
  31. 760 [139]D1$(3)[178]"D"[167][129]U3[178]1[164]FT:[141]6710
  32. 770 [139]RN[178]0[167]850
  33. 780 F1$(U3)[178]KF$(RN):KE$[178]" "[170]KF$(RN)[170]" ":U6[178][195](KE$):U1[178]1
  34. 800 [139][202](KE$,U1,U5)[178]SS$[167][141]6580:U1[178]U6[170]1
  35. 810 [161]GK$:[139]GK$[179][177]""[167]U3[178]FT[170]1:[137]850
  36. 830 [139]U1[170]U5[179][178]U6[167]U1[178]U1[170]1:[137]800
  37. 840 RN[178]RP%(RN):[137]770
  38. 850 [139]D1$(3)[178]"D"[167]RN[178]RP%(0):[130]
  39. 860 [141]4340:[139]D1$(3)[178]"D"[167]U3[178]1:[141]6710
  40. 880 D1$(3)[178]"
  41. 890 RETURN::
  42. 910 PRINTCHR$(14):PRINT"[147]":CL=PEEK(3):IFCL<>22ANDCL<>40ANDCL<>80THENGOTO2300
  43. 940 DF$="":IFCL<>22THENDF$="          
  44. 950 [139]CL[178]22[167]SF[178]3:IB[178]88
  45. 960 [139]CL[178]40[167]SF[178]6:IB[178]80
  46. 970 [139]CL[178]80[167]SF[178]12:IB[178]80
  47. 980 [159]15,8,15:SP$[178]"                                        ":SP$[178]SP$[170]SP$
  48. 990 SP$[178]SP$[170]SP$:SP$[178][200](SP$,IB)
  49. 1000 LS$[178]"":[139]CL[178]22[167]LS$[178][200](LS$,22)
  50. 1010 CS$[178]"":HL$[178]""[170][200](SP$,CL)[170]"WAIT
  51. 1030 PRINT"[147]";HL$;:PRINT:PRINTDF$;"  [201][206][198][197][210]-[211][212][210][213][195][212][213][210][197]":PRINT:PRINTHL$;"";
  52. 1060 PRINTLEFT$(LS$,8)"       DATABASE NAME:[146]":M1=9:M2=0:P4=12:GOSUB1850:DB$=O1$
  53. 1070 PRINTLEFT$(LS$,11);"         FILE PREFIX:[146]":M1=12:M2=0:P4=12:GOSUB1850:FP$=O1$
  54. 1080 PRINTLEFT$(LS$,14)"CREATE NEW DATABASE?:[146]":M1=15:M2=0:P4=12:GOSUB1850:A$=LEFT$(O1$,1)
  55. 1090 P4=12:PRINTLEFT$(LS$,8):GOSUB4270:IFGK$="N"THENGOTO1030
  56. 1180 IFA$="Y"THENGOTO1240
  57. 1190 IFA$<>"N"THENGOTO1030
  58. 1200 ::OPEN11,8,11,"0:"+FP$+".SEQ,S,R":INPUT#11,RT,FT,NE::
  59. 1240 PRINT"[147]":PRINT"NO. OF RECORDS[146]"RT:PRINT:PRINT"EMPTY  RECORDS[146]"NE:PRINT:PRINT"NO. OF FIELDS [146]"FT
  60. 1270 PRINT:PRINT:PRINT:PRINT"ADD HOW MANY: [146]":PRINT:PRINTLEFT$(LS$,13);"   RECORDS   [146]
  61. 1290 M1[178]13:M2[178]15:P4[178]4:[141]1850:RA[178][197](O1$):[139]FT[137]1350
  62. 1320 [153][200](LS$,15);"   FIELDS    WAIT":M1[178]15:M2[178]15:P4[178]4:[141]1850:FA[178][197](O1$)::
  63. 1350 [137]160
  64. 1360 [139]FA[178]0[167]1460
  65. 1370 [153]"LOAD FIELD NO.: WAIT ":[153]:M1[178]1:M2[178]13:P4[178]3:[129]I[178]FT[170]1[164]FT[170]FA:M1[178]M1[170]2
  66. 1410 [153][200](LS$,M1);""I"CMD. LENGTH:WAIT";:[141]1850:[139][197](O1$)[177]IB[167]I[178]I[171]1:M1[178]M1[171]2:[137]1440
  67. 1430 FL%(I)[178][197](O1$)
  68. 1440 [130]::
  69. 1460 [139]A$[178]"Y"[167]1510
  70. 1470 [129]I[178]1[164]FT:[132]11,FM$(I),FL%(I):[130]:[160]11
  71. 1510 FT[178]FT[170]FA:R1[178][171](SF[171]1)
  72. 1530 F2[178]0:P4[178]12:[153]"LOADFIELD NO.WAIT"::[141]4420:[129]I[178]R1[164]R2:[153]"";I;"CMD.";
  73. 1560 [153]"  FIELD NAME: WAIT":[153]SP$;:[130]:[153][200](LS$,4):[129]I[178]R1[164]R2:[153][200](FM$(I)[170]SP$,IB):[130]
  74. 1590 [141]3550:[139]R2[179][177]FT[167][137]1530
  75. 1600 [129]I[178]1[164]FT:FM$(I)[178]F1$(I):[130]:F2[178]1:::[137]170
  76. 1630 [153]"LOAD":[139]RA[178]0[167]1670
  77. 1650 RN[178]RT[170]RA:[141]6500
  78. 1670 RT[178]RT[170]RA:[141]4140:KF[178]1:[141]450::
  79. 1720 [141]6800:[141]4480:[141]3220:[139]D1$(1)[178]"A"[167][141]3330
  80. 1750 [139]D1$(1)[178]"S"[167][141]660
  81. 1760 [139]D1$(1)[178]"E"[167][141]3970
  82. 1770 [139]D1$(1)[178]"R"[167][141]3780
  83. 1780 [139]D1$(1)[178]"P"[167][141]4550
  84. 1790 [139]D1$(1)[178]"Q"[167][160]15:[128]
  85. 1800 [139]D1$(1)[178]"K"[167][141]380
  86. 1810 [139]D1$(1)[178]"D"[167][141]5170
  87. 1820 [137]1720::
  88. 1850 [153][200](LS$,M1);[200](CS$,M2);:[141]1960:[153][200](LS$,M1);[200](CS$,M2);
  89. 1880 [151]198,0:[159]1,0:[151]631,13:[151]198,1:[132]1,O1$:[160]1:[153]:[142]::
  90. 1960 [139][201](P3$,1)[178]" "[167]P3$[178][200](P3$,[195](P3$)[171]1):[137]1960
  91. 1970 P3[178][195](P3$):[139]P3[178]0[167]P3[178]1
  92. 1980 P2[178]1
  93. 1990 [151]204,0
  94. 2000 [161]P1$:[139]P1$[178]""[137]2000
  95. 2010 [151]204,1:[151]207,0:P1[178][198](P1$)
  96. 2030 [139](P1[179]32[176]P1[177]96)[175](P1[179]192[176]P1[177]219)[176]P1[178]44[176]P1[178]34[176]P1[178]58[176]P1[178]59[137]2060
  97. 2040 [139]P2[179]P3[167]P2[178]P2[170]1:[137]2130
  98. 2050 [139]P2[178]P3[175]P3[179][178]P4[167]P2[178]P2[170]1:P3[178]P3[170]1:[137]2130
  99. 2060 [139]P1[178]157[175]P2[177]1[167]P2[178]P2[171]1:[137]2130
  100. 2070 [139]P1[178]20[175]P2[177]1[167]P2[178]P2[171]1:P3[178]P3[171]1:[137]2130
  101. 2080 [139]P1[178]29[175]P2[179]P3[167]P2[178]P2[170]1:[137]2130
  102. 2090 [139]P1[178]29[175]P2[178]P3[175]P2[179][178]P4[167]P2[178]P2[170]1:P3[178]P3[170]1:[137]2130
  103. 2100 [139]P1[178]148[175]P3[179][178]P4[167]P3[178]P3[170]1:[137]2130
  104. 2110 [139]P1[178]13[137]2130
  105. 2120 [137]1990
  106. 2130 X[178][194](209)[170][194](210)[172]256[170][194](211):[151]X,[194](X)[175]127:[153]P1$;:[139]P1[179][177]13[137]1990
  107. 2150 [153]:[142]::
  108. 2164 [129]D1[178]1[164]RT
  109. 2166 [161]#11,D1$:[139]ST[167]KF$(D1)[178]"%&*":D1[178]RT[170]1:[137]2174
  110. 2170 [139]D1$[179][177][199](13)[167]D2$[178]D2$[170]D1$:[137]2166
  111. 2172 KF$(D1)[178]D2$:D2$[178]"
  112. 2174 NEXT:RETURN::
  113. 2210 FORX1=1TOFT:X1$=STR$(X1)+"."+FP$:OPEN12,8,12,"0:"+X1$+".REL,L,"+CHR$(FL%(X1)+1):GOSUB3020
  114. 2250 INPUT#12,F1$(X1):IFLEFT$(F1$(X1),1)="_"THENF1$(X1)=" 
  115. 2260 [141]3020:[160]12:[130]:[142]
  116. 2300 [153]"LOAD(null)(null)VALCLOSEPEEK(null)(null)(null)CLOSE(null)(null)STR$(null)(null)VALCLOSE!":[160]15:[128]::
  117. 2350 [153]LS$;"";DF$;"WRITE THIS RECORD WAIT
  118. 2360 GETY1$:IFY1$="N"GOTO2480
  119. 2370 IFY1$<>"Y"GOTO2360
  120. 2380 FORY1=1TOFT:Y1$=STR$(Y1)+"."+FP$:OPEN12,8,12,"0:"+Y1$+".REL,L,"+CHR$(FL%(Y1)+1):GOSUB3020
  121. 2420 Y2$=LEFT$(F1$(Y1),1):IFY2$=" "ORY2$=""THENF1$(Y1)="_
  122. 2440 [152]12,F1$(Y1):[141]3020:[160]12:[130]
  123. 2480 [142]::
  124. 2510 [139]W3[137]2560
  125. 2511 [153]"LOAD":W1[178]1:W3[178]1:[137]2540:[153][200](LS$,2);"LABELS PER LINE:WAIT ";
  126. 2530 M1[178]2:M2[178]17:P4[178]3:[141]1850:W1[178][197](O1$)
  127. 2540 [153][200](LS$,4);"LINES PER LABEL:WAIT ";:M1[178]4:M2[178]17:P4[178]3:[141]1850:W4[178][197](O1$)
  128. 2560 [129]W2[178]1[164]W1:[139]W2[177]1[167]RN[178]RP%(RN)
  129. 2570 [141]2210
  130. 2580 [139][201](F1$(2),1)[178]" "[167]F1$(2)[178][200](F1$(2),[195](F1$(2))[171]1):[137]2580
  131. 2590 W1$(W2,1)[178]F1$(2)[170]" "[170]F1$(1):[139][200](F1$(3),1)[178]" "[167][137]2650
  132. 2610 W1$(W2,2)[178]F1$(3):W1$(W2,3)[178]F1$(4):W1$(W2,4)[178]F1$(5)
  133. 2620 [139][201](F1$(6),1)[178]" "[167]F1$(6)[178][200](F1$(6),[195](F1$(6))[171]1):[137]2620
  134. 2630 W1$(W2,5)[178]F1$(6)[170]" "[170]F1$(7):W1$(W2,6)[178]F1$(8):[137]2750
  135. 2650 [139][200](F1$(4),1)[178]" "[167][137]2710
  136. 2660 W1$(W2,2)[178]F1$(4):W1$(W2,3)[178]F1$(5):W1$(W2,4)[178]F1$(6):W1$(W2,5)[178]F1$(7)
  137. 2670 [139][201](F1$(6),1)[178]" "[167]F1$(6)[178][200](F1$(6),[195](F1$(6))[171]1):[137]2670
  138. 2680 W1$(W2,4)[178]F1$(6)[170]" "[170]F1$(7):W1$(W2,5)[178]F1$(8):W1$(W2,6)[178]" ":[137]2750
  139. 2710 W1$(W2,2)[178]F1$(5)
  140. 2720 [139][201](F1$(6),1)[178]" "[167]F1$(6)[178][200](F1$(6),[195](F1$(6))[171]1):[137]2720
  141. 2730 W1$(W2,3)[178]F1$(6)[170]" "[170]F1$(7):W1$(W2,4)[178]F1$(8):W1$(W2,5)[178]" ":W1$(W2,6)[178]" 
  142. 2750 IFD1$(6)="C"ANDRN<>T3THENNEXT:GOTO2770
  143. 2760 W2=W1+2
  144. 2770 IFW2<>W1+2THENGOSUB2810
  145. 2780 RETURN::
  146. 2810 OPEN4,4,7:FORX2=1TO6:PRINT#4,W1$(1,X2);:IFW1<>2THENPRINT#4:GOTO2860
  147. 2850 PRINT#4,CHR$(16)"40";W1$(2,X2)
  148. 2860 NEXT:FORX2=1TOW4-6:PRINT#4:NEXT:CLOSE4:RETURN::
  149. 2940 INPUT#15,A1$,A4$,A2$,A3$:IFD1$(5)="E"THENPRINT"[147]"A1$" "A4$" "A2$" "A3$"":GOSUB4340
  150. 2960 RETURN::
  151. 3020 B1=INT(RN/256):B2=RN-B1*256:PRINT#15,"P"CHR$(12+96)CHR$(B2)CHR$(B1)CHR$(1):RETURN::
  152. 3090 OPEN1,8,0,"$":PRINT"[147]":GET#1,X$,X$
  153. 3110 GET#1,X$,X$,X$,X$:IFSTTHENCLOSE1:GOTO3170
  154. 3130 GET#1,X$:IFX$=""THENPRINT:GOTO3110
  155. 3140 IFX$=CHR$(34)THENQ=NOTQ
  156. 3150 IFQTHENPRINTX$;
  157. 3160 GOTO3130
  158. 3170 GOSUB4340:RETURN::
  159. 3220 PRINT"";DF$;"COMMAND:[146]
  160. 3230 [161]D1$(MN):[139]D1$(MN)[179][178]"9"[176]D1$(MN)[177]"Z"[167][137]3230
  161. 3240 [129]D1[178]1[164]OP:[139]D1$(MN)[178][200](MN$(MN,D1),1)[167]D1[178]OP[170]1
  162. 3260 [130]:[139]D1[179][177]OP[170]2[167]3230
  163. 3280 [142]::
  164. 3330 [129]G1[178]1[164]FT:F1$(G1)[178]" ":[130]
  165. 3360 [139]NE[178]0[167][137]3490
  166. 3370 RN[178]NE:[139]D1$(5)[178]"S"[167]3440
  167. 3390 R1[178][171](SF[171]1)
  168. 3400 [141]4420:[141]3680:[141]3550:[139]R2[179][177]FT[167][137]3400
  169. 3440 [139]D1$(5)[178]"S"[167][141]2380:[137]3470
  170. 3450 [141]2350:[139]Y1$[178]"N"[137]3510
  171. 3470 NE[178]RP%(NE):[139]NE[167]3500
  172. 3490 [153]"LOADNO EMPTY RECORDS LEFTWAIT":[141]4340:[137]3510
  173. 3500 KF$(RN)[178]F1$(KF):[141]200
  174. 3510 [142]::
  175. 3550 [153]"":[129]F1[178]R1[164]R2:P3$[178]F1$(F1):[139]F2[167]P4[178]FL%(F1)
  176. 3580 [141]1960:[130]:[141]4270:[139]GK$[178]"N"[167][137]3550
  177. 3600 [153]"":[129]F1[178]R1[164]R2:[151]198,0:[159]1,0:[151]631,13:[151]198,1:[132]1,F1$(F1):[160]1:[153]:[153]:[130]:[142]::
  178. 3680 [153]"LOAD":[153]"RECORD:WAIT ";RN:[153]:[129]H1[178]R1[164]R2:[139]CL[178]22[167][153]"";FM$(H1);"   ";FL%(H1);"WAIT
  179. 3720 IFCL<>22THENPRINT"NAME:[146] ";FM$(H1),"LENGTH:[146] ";FL%(H1)
  180. 3730 PRINTLEFT$(F1$(H1)+SP$,IB);:NEXT:RETURN::
  181. 3780 PRINT"[147]";LEFT$(LS$,2);" WHICH RECORD:[146]";:M1=2:M2=17:P4=3:GOSUB1850
  182. 3800 RN=VAL(O1$):IFRN=0THEN3940
  183. 3810 GOSUB2210:R1=-(SF-1):GOSUB4420:GOSUB3680:PRINTLS$;"";DF$;"DELETE THIS RECORD [146]
  184. 3860 [161]GK$:[139]GK$[178]"N"[167][137]3940
  185. 3880 [139]GK$[179][177]"Y"[167][137]3860
  186. 3890 [141]6500:KF$(RN)[178][199](255):RP%(RN)[178]NE:NE[178]RN:[141]450
  187. 3940 [142]::
  188. 3970 [153]"LOAD":[153][200](LS$,2);" WHICH RECORD:WAIT ";
  189. 3980 M1[178]2:M2[178]17:P4[178]4:[141]1850:RN[178][197](O1$):[139]RN[178]0[167]4100
  190. 3990 [141]2210:R1[178][171](SF[171]1)
  191. 4010 [141]4420:[141]3680:[139]R2[177]6[137]4070
  192. 4040 [153]LS$;"";DF$;"EDIT THIS RECORD WAIT 
  193. 4050 GETGK$:IFGK$="N"THENGOTO4100
  194. 4060 IFGK$<>"Y"THENGOTO4050
  195. 4070 GOSUB3550:IFR2<>FTTHENGOTO4010
  196. 4090 GOSUB2350
  197. 4100 RETURN::
  198. 4140 PRINT#15,"S0:"+FP$+".SEQ":OPEN11,8,11,"0:"+FP$+".SEQ,S,W":PRINT#11,RT:PRINT#11,FT:PRINT#11,NE
  199. 4180 FORI=1TOFT:PRINT#11,FM$(I):PRINT#11,FL%(I):NEXT:CLOSE11:RETURN::
  200. 4270 PRINTLS$;"";DF$"IS THIS CORRECT [146] ";
  201. 4280 GETGK$:IFGK$<>"N"ANDGK$<>"Y"THENGOTO4280
  202. 4300 PRINTLS$;LEFT$(SP$,CL);:RETURN::
  203. 4340 PRINT" <RETURN> [146]
  204. 4350 [161]O1$:[139]O1$[179][177][199](13)[175]O1$[179][177][199](141)[137]4350
  205. 4370 [142]::
  206. 4420 R1[178]R1[170]SF:R2[178]R1[170]SF[171]1:[139]R1[177]FT[171]SF[167]R2[178]FT
  207. 4450 [142]::
  208. 4480 [153]"LOAD":[129]S1[178]1[164]OP:[153]DF$;"";[200](MN$(MN,S1),1);"WAIT";[202](MN$(MN,S1),2):[153]:[130]:[142]::
  209. 4550 [141]6920:[141]4480:[141]3220
  210. 4580 [141]7210:[141]4480:[141]3220:W3[178]0:[153]"LOAD":[139]D1$(6)[178]"B"[137]4690
  211. 4610 [153][200](LS$,2);" FIRST RECORD: WAIT";
  212. 4620 M1[178]2:M2[178]17:P4[178]3:[141]1850:[139]O1$[178]"B"[167]T2[178]RP%(0):[137]4650
  213. 4630 T2[178][197](O1$):[139]T2[178]0[167]4810
  214. 4650 [153][200](LS$,4);" LAST RECORD:  WAIT";:M1[178]4:M2[178]17:P4[178]4:[141]1850:T3[178][197](O1$):RN[178]T2:[137]4730
  215. 4690 [141]4840:T1[178]0
  216. 4710 [139]L1%(T1)[178]0[167]4790
  217. 4720 RN[178]L1%(T1)
  218. 4730 [139]D1$(2)[178]"P"[167][141]5040
  219. 4740 [139]D1$(2)[178]"S"[167][141]4940
  220. 4750 [139]D1$(2)[178]"L"[167][141]2510
  221. 4752 [139]D1$(5)[178]"R"[167][141]5390
  222. 4755 [161]GK$:[139]GK$[179][177]""[167]4790
  223. 4760 [139]D1$(6)[178]"B"[167]T1[178]T1[170]1:[137]4710
  224. 4770 [139]D1$(6)[178]"C"[167][139]RP%(RN)[175]RN[179][177]T3[167]RN[178]RP%(RN):[137]4730
  225. 4790 D1$(2)[178]"":D1$(6)[178]"":[142]::
  226. 4810 D1$(2)[178]"":[142]::
  227. 4840 M1[178]0:M2[178]15:P4[178]4:[129]L1[178]0[164]9:M1[178]M1[170]2:[153][200](LS$,M1);" RECORD NO.:WAIT ";
  228. 4880 [141]1850:L1%(L1)[178][197](O1$):[139]L1%(L1)[178]0[167]L1[178]10
  229. 4900 [130]:[142]::
  230. 4940 R1[178][171](SF[171]1):[141]2210:[161]GK$:[139]GK$[179][177]""[167]5010
  231. 4970 [141]4420:[141]3680:[141]4340:[139]R2[179][177]FT[167]4970
  232. 5010 [142]::
  233. 5040 [159]4,4,7:[141]2210:[152]4:[152]4:[152]4,[199](18)" RECORD NO.:"[199](146)RN:[152]4:[129]V2[178]1[164]FT:[152]4,F1$(V2):[130]
  234. 5100 [152]4:[161]GK$:[139]GK$[179][177]""[167]5120
  235. 5120 [160]4:[142]::
  236. 5170 [141]7110:[141]4480:[141]3220:[139]D1$(5)[178]"E"[167][141]2940
  237. 5210 [139]D1$(5)[178]"D"[167][141]3090
  238. 5220 [139]D1$(5)[178]"S"[167][141]5710
  239. 5230 [139]D1$(5)[178]"P"[167][141]6260
  240. 5240 [139]D1$(5)[178]"R"[167][141]5290
  241. 5250 D1$(5)[178]"":[142]::
  242. 5290 [141]5790:[141]6222:L1$[178]"W":[139][200](TM$,1)[178]"+"[167]L1$[178]"A":TM$[178][202](TM$,2)
  243. 5370 [159]11,9,11,"0:"[170]TM$[170]"S,"[170]L1$:[141]4580:[160]11:[142]::
  244. 5390 [141]2210:[129]L2[178]1[164]FT:[152]11,F1$(L2):[130]:[142]::
  245. 5480 T5[178][171]1:[129]T2[178]1[164]NG:T4[178](T2[171]1)[172]FT[170]1:[132]11,KF$(T4):[139]ST[167]T5[178]T2[171]1:T2[178]NG[170]1:NG[178]T5:[137]5550
  246. 5520 [129]T3[178]2[164]FT:[132]11,KF$((T2[171]1)[172]FT[170]T3):[130]
  247. 5550 [130]:[142]::
  248. 5600 [139]NG[178]0[167]5670
  249. 5610 [129]U1[178]1[164]NG:[129]U2[178]1[164]FT:F1$(U2)[178]KF$(((U1[171]1)[172]FT)[170]U2):[130]:[141]3360:[130]
  250. 5670 [142]::
  251. 5710 [153]"LOADHOW MANY DRIVES? WAIT";
  252. 5715 [161]GK$:[139]GK$[179][177]"1"[175]GK$[179][177]"2"[137]5715
  253. 5720 [141]5790:NG[178][181](RT[173]FT):[145][197](GK$)[141]5860,6100:[141]450:[142]::
  254. 5790 [153]"LOAD":[153][200](LS$,2);" FILENAME: WAIT":M1[178]3:M2[178]0:P4[178]12:[141]1850:TM$[178]O1$:[142]::
  255. 5860 V2[178]0
  256. 5870 [153]:[153]"INSERT SEQ FILE DISKWAIT":[141]4340:[159]11,8,11,"0:"[170]TM$[170]"S,R":[141]6020:[141]5480:[160]11
  257. 5930 [153]:[153]"INSERT D-BASE DISKWAIT":[141]4340:[141]5600:V2[178]V2[170]NG[172]FT:[139]T5[179]0[137]5870
  258. 5980 [142]::
  259. 6020 [139]V2[178]0[137]6060
  260. 6030 [129]X1[178]1[164]V2:[132]11,X1$:[130]
  261. 6060 [142]::
  262. 6100 [141]6222:[159]11,9,11,"0:"[170]TM$[170]"S,R
  263. 6180 GOSUB5480:GOSUB5600:IFT5<0GOTO6180
  264. 6210 CLOSE11:RETURN::
  265. 6222 PRINT"[147]":PRINT"SEQ FILE DISK  [146]":PRINT"IN DRIVE #9    [146]":PRINT:PRINT"D-BASE DISK    [146]
  266. 6227 [153]"IN DRIVE #8    WAIT":[153]:[153]"DRIVES  READY? WAIT":[141]4340:[142]::
  267. 6260 [141]5790:[141]7050:[141]4480:[141]3220:[153]"LOADDISC IN DRIVE #8? WAIT":[141]4340:[153]"LOAD
  268. 6290 OPEN11,8,11,"0:"+TM$+"S,R":D2=0:D2$="
  269. 6310 [139]D1$(4)[178]"P"[167][159]4,4,7
  270. 6320 [141]2164:[129]D1[178]1[164]RT:[139]KF$(D1)[178]"%&*"[167]D1[178]RT[170]1:[137]6410
  271. 6380 D2[178]D2[170]1:[139][195](KF$(D1))[177]CL[167]D2[178]D2[170]1
  272. 6390 [139]D1$(4)[178]"P"[167][152]4,KF$(D1):[137]6420
  273. 6400 [153]KF$(D1)
  274. 6410 [139]D1[179][177]RT[170]1[175]D2[179]22[137]6420
  275. 6412 [153]:[141]4340:D2[178]0:[153]"LOAD":[139]O1$[178][199](141)[167]D1[178]RT[170]1
  276. 6420 [130]:[139]D1$(4)[178]"P"[167][160]4
  277. 6440 [139]D1[179][177]RT[170]2[167]6310
  278. 6450 [160]11:[153]"LOAD":[153]:[153]" INSERT D-BASE DISK WAIT":[141]4340:U3[178]KF:[141]6710:D1$(4)[178]"":[142]::
  279. 6500 [129]Z1[178]1[164]FT:F1$(Z1)[178][199](255):[130]:[141]2380:[142]::
  280. 6580 [139]D1$(4)[178]"P"[167][159]4,4,7:[157]4
  281. 6590 [153]" RECORD:WAIT";RN;DF$;:[139]CL[179][177]22[167][153]" FIELD:WAIT ";FM$(U3)
  282. 6600 [139]CL[178]22[167][153]
  283. 6610 [153]F1$(U3):[139]D1$(4)[178]"P"[167][152]4:[160]4:[137]6670
  284. 6630 TI$[178]"000000
  285. 6640 GETGK$:IFGK$=CHR$(13)THENGOSUB4940:PRINT"[147] SCAN FOR: [146]";SS$:GOTO6670
  286. 6660 U8=FRE(0):IFTI$<"000002"THEN6640
  287. 6670 RETURN::
  288. 6710 FK$=STR$(U3)+"."+FP$:OPEN11,8,11,"0:"+FK$+".REL":FORW1=1TORT:INPUT#11,KF$(W1):NEXT:CLOSE11:RETURN::
  289. 6800 MN$(1,1)="ADD":MN$(1,4)="SCAN":MN$(1,2)="EDIT":MN$(1,3)="REMOVE
  290. 6840 MN$(1,6)[178]"PRINT":MN$(1,8)[178]"QUIT":MN$(1,5)[178]"KEYFIELD":MN$(1,7)[178]"DISC
  291. 6880 OP=8:MN=1:RETURN::
  292. 6920 MN$(2,1)="SCREEN":MN$(2,2)="PRINTER":MN$(2,3)="LABELS":OP=3:MN=2:RETURN::
  293. 6990 MN$(3,1)="KEYFIELD":MN$(3,2)="DATABASE":OP=2:MN=3:RETURN::
  294. 7050 MN$(4,1)="SCREEN":MN$(4,2)="PRINTER":OP=2:MN=4:RETURN::
  295. 7110 MN$(5,1)="ERROR":MN$(5,2)="DIRECTORY":MN$(5,4)="SEQ > REL":MN$(5,3)="PRINT
  296. 7150 MN$(5,5)[178]"REL > SEQ":OP[178]5:MN[178]5:[142]::
  297. 7210 MN$(6,1)[178]"BATCH":MN$(6,2)[178]"CONTINUOUS":OP[178]2:MN[178]6:[142]::
  298.